Image information, be it color, black or white, is commonly generated in a bitmap format where the bitmap comprises a plurality of gray level pixels, i.e. pixels that are defined by digital values, each value representing a gray level among a number of gray levels. Thus, in an 8 bit system, 256 levels of gray are present, where each level represents an increment of gray between black and white. In the case of color bitmaps, where three defining colors or separations each include 256 levels of information, there may be more than 16 million colors defined by gray bitmaps.
Usually, bitmaps in such a gray level format are unprintable by standard printers. Standard printers print in a limited number of levels, either a spot or a no spot in the binary case, or a limited number of levels associated with the spot, for example, four in the quaternary case. Accordingly, it is necessary to reduce the gray level image data to a limited number of levels so that it is printed. Besides gray level information derived by scanning, computer graphics processes and other image processing methods may produce gray level images for reproduction.
One standard method of converting gray level pixel values to binary level pixel values is through the use of dithering or halftoning processes. In such arrangements, over a given area having a number of gray pixels therein, each pixel value of an array of gray level pixels within the area is compared to one of a set of preselected thresholds (the thresholds are stored as a dither matrix and the repetitive pattern generated by this matrix is considered a halftone cell) as taught, for example, in U.S. Pat. No. 4,149,194 to Holladay. The effect of such an arrangement is that, for an area where the image is gray, some of the thresholds within the dither matrix will be exceeded, i.e. the image value at that specific location is larger than the value stored in the dither matrix for that same location, while others are not. In the binary case, the pixels or cell elements for which the thresholds are exceeded might be printed as black, while the remaining elements are allowed to remain white, dependent on the actual physical quantity described by the data. The effect of the distribution of black and white over the halftone cell is integrated by the human eye as gray. Dithering or halftoning presents problems, however, in that the amount of gray within an original image is not maintained exactly over an area, because the finite number of elements inside each dither matrix--and therefore halftone cell--only allows the reproduction of a finite number of gray levels, i.e. number of elements in the cell plus one, or less. The error arising from the difference between the output pixel value and the actual gray level pixel value at any particular cell is simply thrown away. This results in a loss of image information. In particular, dithering introduces coarse quantization artifacts which are visible in the image areas where the scene has little variation. This is also known as "banding", and is caused by the limited number of output gray levels available. The "banding" artifacts generally increase with decreasing cell size, which is identical to a decrease in the number of levels that can be represented by the halftone cell.
In the ARIES (Alias Reduction and Image Enhancement System) method of halftone reproduction, described by P. Roetling in "Halftone Method With Enhancement and Moire' Suppression," J. Opt. Soc. Amer. Vol. 66, No. 10, pp. 985-989, October, 1976, image information initially has a set of halftone screen values for a cell added to the information. A uniform threshold value is applied to the screened information, to produce an output value. The average gray value over the cell area of the input image is compared to the average gray value over the cell area of the output image. See, also, U.S. Pat. No. 4,051,536 to Roetling and U.S. Pat. No. 4,633,327 to Roetling. In this way, the error between original and output is minimized over each halftone cell. The banding artifact, however, is not reduced.
Algorithms that convert gray images to binary or other number of level images attempting to preserve the local density exist, and include among them error diffusion, as taught, for example, in "An Adaptive Algorithm for Spatial Greyscale" by Floyd and Steinberg, Proceedings of the SID 17/2, 75-77 (1976) (hereinafter, "Floyd and Steinberg"). Additional modifications to the error diffusion algorithm taught by Floyd and Steinberg have been proposed, e.g.: a different weighting matrix, as taught, for example, in "A Survey of Techniques for the Display of Continuous Tone Pictures on Bilevel Displays" by Jarvis et al., Computer Graphics and Image Processing, Vol. 5., pp. 13-40 (1976)
"MECCA--A Multiple-Error Correction Computation Algorithm for Bi-Level Image Hardcopy Reproduction" by Stucki, IBM Res. Rep. RZ1060 (1981), also describes an error diffusion algorithm incorporating actual printer dot overlaps in the error calculation, thereby generating a better printable result.
U.S. Pat. No. 5,055,942 to Levien suggests another pixel based error diffusion scheme where the tendency of the individual dots to form clusters in a screened image can be varied by applying a hysteresis constant and recursion techniques known from adaptive screening, to allow adjustment of image coarseness by adjustment of the hysteresis constant. This method produces better images, particularly for electrophotographic printing than the original error diffusion algorithm, but the images tend to have reduced sharpness or detail resolution, as compared to Floyd and Steinberg. In implementation, the Levien method uses an error diffusion process, providing a feedback response based on the output image, and particularly, dot size. The resulting irregular placement of dots improves the number of gray shades which can be reproduced. However, the hysteresis function implemented to control the feedback response tends to dampen the response at edges.
U.S. Pat. No. 4,625,222 to Bassetti et al. discloses a print enhancement control system for an electrostatic copying machine wherein control logic circuitry processes a set of image altering parameters to improve image production quality. These parameters, whose values are either predetermined, fixed or have been received from an exterior source, improve image quality (i.e., resolution) by modifying modulated gray signals.
U.S. Pat. No. 4,700,229 to Herrmann et al. discloses an image enhancement circuit which converts a low quality image signal into a high quality image signal by modifying the binary representation of a picture. Image enhancement is accomplished by multiplying a series of error difference signals by a series of weighting factors k(i) which produce a clearer image by improving picture resolution.
U.S. Pat. No. 4,672,463 to Tomohisa et al. discloses a method to improve image quality within an electrostatic reproduction machine wherein the sharpness of an image is improved based on the value of an image sharpness control parameter that has been calculated examining the copy quality of an original.
U.S. Pat. No. 4,709,250 to Takeuchi discloses an image forming apparatus which improves the halftone image quality of an original. The pulse width of a reference control signal controls and improves image quality in response to a detected image density signal.
U.S. Pat. No. 4,724,461 to Rushing discloses an image improving process control for an electrostatic copying machine which maintains high image quality by adjusting a set of process control parameters.
U.S. Pat. No. 4,256,401 to Fujimura et al. discloses an image density adjustment method wherein a predetermined image density level within an electrostatic copying machine is maintained at a standard density by varying a set of input control parameters.
U.S. Pat. No. 4,693,593 to Gerger discloses a method of improving the image quality by controlling a single process parameter in response to changes in sensitometric characteristics of an image transfer member.
Modifications to the Floyd and Steinberg algorithm may, as shown by Billotet-Hoffman and Bryngdahl in the Proceedings of the Society for Information Display, Volume 24, 1983, "On the Error Diffusion Technique for Electronic Halftoning", include a varying threshold, a dither, instead of a fixed threshold. The adaptive nature of the Floyd and Steinberg algorithm automatically provides a sharp, edge-enhanced appearance which, while visually appealing, may not necessarily be desirable in the output image.
A difficulty with the Floyd and Steinberg error diffusion algorithm is that an inherent edge enhancement is built into the algorithm. Analysis of the output of the Floyd and Steinberg error diffusion algorithm illustrates a characteristic overshoot (too dark or too light) at upward and downward transitions, or steps, in the continuous tone digital image data. As used within this specification, continuous tone refers to input data that has been quantized to a larger number of discrete values than intended for the output data.
These systems, although providing some degree of image improvement, generally do not provide the means to control the edge enhancement of regions within the image. However, U.S. Pat. No. 5,045,952 to Eschbach, assigned to the same assignee as the present invention; serves to provide some image dependent edge enhancement. To that end, Eschbach describes a method of dynamically adjusting the threshold level of an error diffusion algorithm to selectively control the amount of edge enhancement introduced into the encoded output. The threshold level is selectively modified on a pixel by pixel basis and may be used to increase or decrease the edge enhancement of the output digital image, thus, more closely representing the original detail and edge sharpness of the continuous tone input image.
While the Eschbach approach produces good images, the linear input threshold modulation induces edge enhancements that are asymmetrical through the image. Most of the enhancement occurs on one side of the edge, which appears harsh to the eye.
Other references have attempted to address the directionality of error diffusion, include U.S. Pat. No. 5,521,989 to Fan, entitled "Balanced Error Diffusion System", and U.S. Pat. No. 5,467,201 to Fan, entitled "Iterative Error Diffusion". Neither of these references addresses the directionality of edge enhancement.
The above identified references are incorporated by reference for their teachings.